(function() {
    var $c = function(a) { this.w = a || [] };
    $c.prototype.set = function(a) { this.w[a] = !0 };
    $c.prototype.encode = function() { for (var a = [], b = 0; b < this.w.length; b++) this.w[b] && (a[Math.floor(b / 6)] ^= 1 << b % 6); for (b = 0; b < a.length; b++) a[b] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".charAt(a[b] || 0); return a.join("") + "~" };
    var vd = new $c;

    function J(a) { vd.set(a) }
    var Td = function(a) {
            a = Dd(a);
            a = new $c(a);
            for (var b = vd.w.slice(), c = 0; c < a.w.length; c++) b[c] = b[c] || a.w[c];
            return (new $c(b)).encode()
        },
        Dd = function(a) {
            a = a.get(Gd);
            ka(a) || (a = []);
            return a
        };
    var ea = function(a) { return "function" == typeof a },
        ka = function(a) { return "[object Array]" == Object.prototype.toString.call(Object(a)) },
        qa = function(a) { return void 0 != a && -1 < (a.constructor + "").indexOf("String") },
        D = function(a, b) { return 0 == a.indexOf(b) },
        sa = function(a) { return a ? a.replace(/^[\s\xa0]+|[\s\xa0]+$/g, "") : "" },
        ra = function() {
            for (var a = O.navigator.userAgent + (M.cookie ? M.cookie : "") + (M.referrer ? M.referrer : ""), b = a.length, c = O.history.length; 0 < c;) a += c-- ^ b++;
            return [hd() ^ La(a) & 2147483647, Math.round((new Date).getTime() /
                1E3)].join(".")
        },
        ta = function(a) {
            var b = M.createElement("img");
            b.width = 1;
            b.height = 1;
            b.src = a;
            return b
        },
        ua = function() {},
        K = function(a) {
            if (encodeURIComponent instanceof Function) return encodeURIComponent(a);
            J(28);
            return a
        },
        L = function(a, b, c, d) { try { a.addEventListener ? a.addEventListener(b, c, !!d) : a.attachEvent && a.attachEvent("on" + b, c) } catch (e) { J(27) } },
        f = /^[\w\-:/.?=&%!]+$/,
        wa = function(a, b, c) {
            a && (c ? (c = "", b && f.test(b) && (c = ' id="' + b + '"'), f.test(a) && M.write("<script" + c + ' src="' + a + '">\x3c/script>')) : (c = M.createElement("script"),
                c.type = "text/javascript", c.async = !0, c.src = a, b && (c.id = b), a = M.getElementsByTagName("script")[0], a.parentNode.insertBefore(c, a)))
        },
        be = function(a, b) { return E(M.location[b ? "href" : "search"], a) },
        E = function(a, b) { return (a = a.match("(?:&|#|\\?)" + K(b).replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1") + "=([^&#]*)")) && 2 == a.length ? a[1] : "" },
        xa = function() { var a = "" + M.location.hostname; return 0 == a.indexOf("www.") ? a.substring(4) : a },
        de = function(a, b) {
            var c = a.indexOf(b);
            if (5 == c || 6 == c)
                if (a = a.charAt(c + b.length), "/" == a || "?" == a ||
                    "" == a || ":" == a) return !0;
            return !1
        },
        ya = function(a, b) {
            var c = M.referrer;
            if (/^(https?|android-app):\/\//i.test(c)) {
                if (a) return c;
                a = "//" + M.location.hostname;
                if (!de(c, a)) return b && (b = a.replace(/\./g, "-") + ".cdn.ampproject.org", de(c, b)) ? void 0 : c
            }
        },
        za = function(a, b) {
            if (1 == b.length && null != b[0] && "object" === typeof b[0]) return b[0];
            for (var c = {}, d = Math.min(a.length + 1, b.length), e = 0; e < d; e++)
                if ("object" === typeof b[e]) { for (var g in b[e]) b[e].hasOwnProperty(g) && (c[g] = b[e][g]); break } else e < a.length && (c[a[e]] = b[e]);
            return c
        };
    var ee = function() {
        this.keys = [];
        this.values = {};
        this.m = {}
    };
    ee.prototype.set = function(a, b, c) {
        this.keys.push(a);
        c ? this.m[":" + a] = b : this.values[":" + a] = b
    };
    ee.prototype.get = function(a) { return this.m.hasOwnProperty(":" + a) ? this.m[":" + a] : this.values[":" + a] };
    ee.prototype.map = function(a) {
        for (var b = 0; b < this.keys.length; b++) {
            var c = this.keys[b],
                d = this.get(c);
            d && a(c, d)
        }
    };
    var O = window,
        M = document,
        va = function(a, b) { return setTimeout(a, b) };
    var F = window,
        Ea = document,
        G = function(a) {
            var b = F._gaUserPrefs;
            if (b && b.ioo && b.ioo() || a && !0 === F["ga-disable-" + a]) return !0;
            try { var c = F.external; if (c && c._gaUserPrefs && "oo" == c._gaUserPrefs) return !0 } catch (g) {} a = [];
            b = Ea.cookie.split(";");
            c = /^\s*AMP_TOKEN=\s*(.*?)\s*$/;
            for (var d = 0; d < b.length; d++) {
                var e = b[d].match(c);
                e && a.push(e[1])
            }
            for (b = 0; b < a.length; b++)
                if ("$OPT_OUT" == decodeURIComponent(a[b])) return !0;
            return !1
        };
    var Ca = function(a) {
            var b = [],
                c = M.cookie.split(";");
            a = new RegExp("^\\s*" + a + "=\\s*(.*?)\\s*$");
            for (var d = 0; d < c.length; d++) {
                var e = c[d].match(a);
                e && b.push(e[1])
            }
            return b
        },
        zc = function(a, b, c, d, e, g) {
            e = G(e) ? !1 : eb.test(M.location.hostname) || "/" == c && vc.test(d) ? !1 : !0;
            if (!e) return !1;
            b && 1200 < b.length && (b = b.substring(0, 1200));
            c = a + "=" + b + "; path=" + c + "; ";
            g && (c += "expires=" + (new Date((new Date).getTime() + g)).toGMTString() + "; ");
            d && "none" !== d && (c += "domain=" + d + ";");
            d = M.cookie;
            M.cookie = c;
            if (!(d = d != M.cookie)) a: {
                a = Ca(a);
                for (d = 0; d < a.length; d++)
                    if (b == a[d]) { d = !0; break a }
                d = !1
            }
            return d
        },
        Cc = function(a) { return encodeURIComponent ? encodeURIComponent(a).replace(/\(/g, "%28").replace(/\)/g, "%29") : a },
        vc = /^(www\.)?google(\.com?)?(\.[a-z]{2})?$/,
        eb = /(^|\.)doubleclick\.net$/i;
    var oc, Id = /^.*Version\/?(\d+)[^\d].*$/i,
        ne = function() {
            if (void 0 !== O.__ga4__) return O.__ga4__;
            if (void 0 === oc) {
                var a = O.navigator.userAgent;
                if (a) {
                    var b = a;
                    try { b = decodeURIComponent(a) } catch (c) {}
                    if (a = !(0 <= b.indexOf("Chrome")) && !(0 <= b.indexOf("CriOS")) && (0 <= b.indexOf("Safari/") || 0 <= b.indexOf("Safari,"))) b = Id.exec(b), a = 11 <= (b ? Number(b[1]) : -1);
                    oc = a
                } else oc = !1
            }
            return oc
        };
    var Fa, Ga, fb, Ab, ja = /^https?:\/\/[^/]*cdn\.ampproject\.org\//,
        Ub = [],
        ic = function() { Z.D([ua]) },
        tc = function(a, b) {
            var c = Ca("AMP_TOKEN");
            if (1 < c.length) return J(55), !1;
            c = decodeURIComponent(c[0] || "");
            if ("$OPT_OUT" == c || "$ERROR" == c || G(b)) return J(62), !1;
            if (!ja.test(M.referrer) && "$NOT_FOUND" == c) return J(68), !1;
            if (void 0 !== Ab) return J(56), va(function() { a(Ab) }, 0), !0;
            if (Fa) return Ub.push(a), !0;
            if ("$RETRIEVING" == c) return J(57), va(function() { tc(a, b) }, 1E4), !0;
            Fa = !0;
            c && "$" != c[0] || (xc("$RETRIEVING", 3E4), setTimeout(Mc,
                3E4), c = "");
            return Pc(c, b) ? (Ub.push(a), !0) : !1
        },
        Pc = function(a, b, c) {
            if (!window.JSON) return J(58), !1;
            var d = O.XMLHttpRequest;
            if (!d) return J(59), !1;
            var e = new d;
            if (!("withCredentials" in e)) return J(60), !1;
            e.open("POST", (c || "https://ampcid.google.com/v1/publisher:getClientId") + "?key=AIzaSyA65lEHUEizIsNtlbNo-l2K18dT680nsaM", !0);
            e.withCredentials = !0;
            e.setRequestHeader("Content-Type", "text/plain");
            e.onload = function() {
                Fa = !1;
                if (4 == e.readyState) {
                    try {
                        200 != e.status && (J(61), Qc("", "$ERROR", 3E4));
                        var d = JSON.parse(e.responseText);
                        d.optOut ? (J(63), Qc("", "$OPT_OUT", 31536E6)) : d.clientId ? Qc(d.clientId, d.securityToken, 31536E6) : !c && d.alternateUrl ? (Ga && clearTimeout(Ga), Fa = !0, Pc(a, b, d.alternateUrl)) : (J(64), Qc("", "$NOT_FOUND", 36E5))
                    } catch (ca) { J(65), Qc("", "$ERROR", 3E4) } e = null
                }
            };
            d = { originScope: "AMP_ECID_GOOGLE" };
            a && (d.securityToken = a);
            e.send(JSON.stringify(d));
            Ga = va(function() {
                J(66);
                Qc("", "$ERROR", 3E4)
            }, 1E4);
            return !0
        },
        Mc = function() { Fa = !1 },
        xc = function(a, b) {
            if (void 0 === fb) {
                fb = "";
                for (var c = id(), d = 0; d < c.length; d++) {
                    var e = c[d];
                    if (zc("AMP_TOKEN",
                            encodeURIComponent(a), "/", e, "", b)) { fb = e; return }
                }
            }
            zc("AMP_TOKEN", encodeURIComponent(a), "/", fb, "", b)
        },
        Qc = function(a, b, c) {
            Ga && clearTimeout(Ga);
            b && xc(b, c);
            Ab = a;
            b = Ub;
            Ub = [];
            for (c = 0; c < b.length; c++) b[c](a)
        };
    var oe = function() { return (Ba || "https:" == M.location.protocol ? "https:" : "http:") + "//www.google-analytics.com" },
        Da = function(a) {
            this.name = "len";
            this.message = a + "-8192"
        },
        ba = function(a, b, c) {
            c = c || ua;
            if (2036 >= b.length) wc(a, b, c);
            else if (8192 >= b.length) x(a, b, c) || wd(a, b, c) || wc(a, b, c);
            else throw ge("len", b.length), new Da(b.length);
        },
        pe = function(a, b, c, d) {
            d = d || ua;
            wd(a + "?" + b, "", d, c)
        },
        wc = function(a, b, c) {
            var d = ta(a + "?" + b);
            d.onload = d.onerror = function() {
                d.onload = null;
                d.onerror = null;
                c()
            }
        },
        wd = function(a, b, c, d) {
            var e = O.XMLHttpRequest;
            if (!e) return !1;
            var g = new e;
            if (!("withCredentials" in g)) return !1;
            a = a.replace(/^http:/, "https:");
            g.open("POST", a, !0);
            g.withCredentials = !0;
            g.setRequestHeader("Content-Type", "text/plain");
            g.onreadystatechange = function() {
                if (4 == g.readyState) {
                    if (d) try {
                        var a = g.responseText;
                        if (1 > a.length) ge("xhr", "ver", "0"), c();
                        else if ("1" != a.charAt(0)) ge("xhr", "ver", String(a.length)), c();
                        else if (3 < d.count++) ge("xhr", "tmr", "" + d.count), c();
                        else if (1 == a.length) c();
                        else {
                            var b = a.charAt(1);
                            if ("d" == b) pe("https://stats.g.doubleclick.net/j/collect",
                                d.U, d, c);
                            else if ("g" == b) {
                                var e = "https://www.google.%/ads/ga-audiences".replace("%", "com");
                                wc(e, d.google, c);
                                var w = a.substring(2);
                                if (w)
                                    if (/^[a-z.]{1,6}$/.test(w)) {
                                        var ha = "https://www.google.%/ads/ga-audiences".replace("%", w);
                                        wc(ha, d.google, ua)
                                    } else ge("tld", "bcc", w)
                            } else ge("xhr", "brc", b), c()
                        }
                    } catch (ue) { ge("xhr", "rsp"), c() } else c();
                    g = null
                }
            };
            g.send(b);
            return !0
        },
        x = function(a, b, c) { return O.navigator.sendBeacon ? O.navigator.sendBeacon(a, b) ? (c(), !0) : !1 : !1 },
        ge = function(a, b, c) {
            1 <= 100 * Math.random() || G("?") ||
                (a = ["t=error", "_e=" + a, "_v=j67", "sr=1"], b && a.push("_f=" + b), c && a.push("_m=" + K(c.substring(0, 100))), a.push("aip=1"), a.push("z=" + hd()), wc("https://www.google-analytics.com/u/d", a.join("&"), ua))
        };
    var h = function(a) { var b = O.gaData = O.gaData || {}; return b[a] = b[a] || {} };
    var Ha = function() { this.M = [] };
    Ha.prototype.add = function(a) { this.M.push(a) };
    Ha.prototype.D = function(a) {
        try {
            for (var b = 0; b < this.M.length; b++) {
                var c = a.get(this.M[b]);
                c && ea(c) && c.call(O, a)
            }
        } catch (d) {} b = a.get(Ia);
        b != ua && ea(b) && (a.set(Ia, ua, !0), setTimeout(b, 10))
    };

    function Ja(a) { if (100 != a.get(Ka) && La(P(a, Q)) % 1E4 >= 100 * R(a, Ka)) throw "abort"; }

    function Ma(a) { if (G(P(a, Na))) throw "abort"; }

    function Oa() { var a = M.location.protocol; if ("http:" != a && "https:" != a) throw "abort"; }

    function Pa(a) {
        try { O.navigator.sendBeacon ? J(42) : O.XMLHttpRequest && "withCredentials" in new O.XMLHttpRequest && J(40) } catch (c) {} a.set(ld, Td(a), !0);
        a.set(Ac, R(a, Ac) + 1);
        var b = [];
        Qa.map(function(c, d) { d.F && (c = a.get(c), void 0 != c && c != d.defaultValue && ("boolean" == typeof c && (c *= 1), b.push(d.F + "=" + K("" + c)))) });
        b.push("z=" + Bd());
        a.set(Ra, b.join("&"), !0)
    }

    function Sa(a) {
        var b = P(a, gd) || oe() + "/collect",
            c = a.get(qe),
            d = P(a, fa);
        !d && a.get(Vd) && (d = "beacon");
        if (c) pe(b, P(a, Ra), c, a.get(Ia));
        else if (d) {
            c = d;
            d = P(a, Ra);
            var e = a.get(Ia);
            e = e || ua;
            "image" == c ? wc(b, d, e) : "xhr" == c && wd(b, d, e) || "beacon" == c && x(b, d, e) || ba(b, d, e)
        } else ba(b, P(a, Ra), a.get(Ia));
        b = a.get(Na);
        b = h(b);
        c = b.hitcount;
        b.hitcount = c ? c + 1 : 1;
        b = a.get(Na);
        delete h(b).pending_experiments;
        a.set(Ia, ua, !0)
    }

    function Hc(a) {
        (O.gaData = O.gaData || {}).expId && a.set(Nc, (O.gaData = O.gaData || {}).expId);
        (O.gaData = O.gaData || {}).expVar && a.set(Oc, (O.gaData = O.gaData || {}).expVar);
        var b = a.get(Na);
        if (b = h(b).pending_experiments) { var c = []; for (d in b) b.hasOwnProperty(d) && b[d] && c.push(encodeURIComponent(d) + "." + encodeURIComponent(b[d])); var d = c.join("!") } else d = void 0;
        d && a.set(m, d, !0)
    }

    function cd() { if (O.navigator && "preview" == O.navigator.loadPurpose) throw "abort"; }

    function yd(a) {
        var b = O.gaDevIds;
        ka(b) && 0 != b.length && a.set("&did", b.join(","), !0)
    }

    function vb(a) { if (!a.get(Na)) throw "abort"; };
    var hd = function() { return Math.round(2147483647 * Math.random()) },
        Bd = function() {
            try {
                var a = new Uint32Array(1);
                O.crypto.getRandomValues(a);
                return a[0] & 2147483647
            } catch (b) { return hd() }
        };

    function Ta(a) {
        var b = R(a, Ua);
        500 <= b && J(15);
        var c = P(a, Va);
        if ("transaction" != c && "item" != c) {
            c = R(a, Wa);
            var d = (new Date).getTime(),
                e = R(a, Xa);
            0 == e && a.set(Xa, d);
            e = Math.round(2 * (d - e) / 1E3);
            0 < e && (c = Math.min(c + e, 20), a.set(Xa, d));
            if (0 >= c) throw "abort";
            a.set(Wa, --c)
        }
        a.set(Ua, ++b)
    };
    var Ya = function() { this.data = new ee },
        Qa = new ee,
        Za = [];
    Ya.prototype.get = function(a) {
        var b = $a(a),
            c = this.data.get(a);
        b && void 0 == c && (c = ea(b.defaultValue) ? b.defaultValue() : b.defaultValue);
        return b && b.Z ? b.Z(this, a, c) : c
    };
    var P = function(a, b) { a = a.get(b); return void 0 == a ? "" : "" + a },
        R = function(a, b) { a = a.get(b); return void 0 == a || "" === a ? 0 : 1 * a };
    Ya.prototype.set = function(a, b, c) {
        if (a)
            if ("object" == typeof a)
                for (var d in a) a.hasOwnProperty(d) && ab(this, d, a[d], c);
            else ab(this, a, b, c)
    };
    var ab = function(a, b, c, d) {
            if (void 0 != c) switch (b) {
                case Na:
                    wb.test(c)
            }
            var e = $a(b);
            e && e.o ? e.o(a, b, c, d) : a.data.set(b, c, d)
        },
        bb = function(a, b, c, d, e) {
            this.name = a;
            this.F = b;
            this.Z = d;
            this.o = e;
            this.defaultValue = c
        },
        $a = function(a) {
            var b = Qa.get(a);
            if (!b)
                for (var c = 0; c < Za.length; c++) {
                    var d = Za[c],
                        e = d[0].exec(a);
                    if (e) {
                        b = d[1](e);
                        Qa.set(b.name, b);
                        break
                    }
                }
            return b
        },
        yc = function(a) {
            var b;
            Qa.map(function(c, d) { d.F == a && (b = d) });
            return b && b.name
        },
        S = function(a, b, c, d, e) {
            a = new bb(a, b, c, d, e);
            Qa.set(a.name, a);
            return a.name
        },
        cb = function(a,
            b) { Za.push([new RegExp("^" + a + "$"), b]) },
        T = function(a, b, c) { return S(a, b, c, void 0, db) },
        db = function() {};
    var gb = qa(window.GoogleAnalyticsObject) && sa(window.GoogleAnalyticsObject) || "ga",
        jd = /^(?:utma\.)?\d+\.\d+$/,
        kd = /^amp-[\w.-]{22,64}$/,
        Ba = !1,
        hb = T("apiVersion", "v"),
        ib = T("clientVersion", "_v");
    S("anonymizeIp", "aip");
    var jb = S("adSenseId", "a"),
        Va = S("hitType", "t"),
        Ia = S("hitCallback"),
        Ra = S("hitPayload");
    S("nonInteraction", "ni");
    S("currencyCode", "cu");
    S("dataSource", "ds");
    var Vd = S("useBeacon", void 0, !1),
        fa = S("transport");
    S("sessionControl", "sc", "");
    S("sessionGroup", "sg");
    S("queueTime", "qt");
    var Ac = S("_s", "_s");
    S("screenName", "cd");
    var kb = S("location", "dl", ""),
        lb = S("referrer", "dr"),
        mb = S("page", "dp", "");
    S("hostname", "dh");
    var nb = S("language", "ul"),
        ob = S("encoding", "de");
    S("title", "dt", function() { return M.title || void 0 });
    cb("contentGroup([0-9]+)", function(a) { return new bb(a[0], "cg" + a[1]) });
    var pb = S("screenColors", "sd"),
        qb = S("screenResolution", "sr"),
        rb = S("viewportSize", "vp"),
        sb = S("javaEnabled", "je"),
        tb = S("flashVersion", "fl");
    S("campaignId", "ci");
    S("campaignName", "cn");
    S("campaignSource", "cs");
    S("campaignMedium", "cm");
    S("campaignKeyword", "ck");
    S("campaignContent", "cc");
    var ub = S("eventCategory", "ec"),
        xb = S("eventAction", "ea"),
        yb = S("eventLabel", "el"),
        zb = S("eventValue", "ev"),
        Bb = S("socialNetwork", "sn"),
        Cb = S("socialAction", "sa"),
        Db = S("socialTarget", "st"),
        Eb = S("l1", "plt"),
        Fb = S("l2", "pdt"),
        Gb = S("l3", "dns"),
        Hb = S("l4", "rrt"),
        Ib = S("l5", "srt"),
        Jb = S("l6", "tcp"),
        Kb = S("l7", "dit"),
        Lb = S("l8", "clt"),
        Mb = S("timingCategory", "utc"),
        Nb = S("timingVar", "utv"),
        Ob = S("timingLabel", "utl"),
        Pb = S("timingValue", "utt");
    S("appName", "an");
    S("appVersion", "av", "");
    S("appId", "aid", "");
    S("appInstallerId", "aiid", "");
    S("exDescription", "exd");
    S("exFatal", "exf");
    var Nc = S("expId", "xid"),
        Oc = S("expVar", "xvar"),
        m = S("exp", "exp"),
        Rc = S("_utma", "_utma"),
        Sc = S("_utmz", "_utmz"),
        Tc = S("_utmht", "_utmht"),
        Ua = S("_hc", void 0, 0),
        Xa = S("_ti", void 0, 0),
        Wa = S("_to", void 0, 20);
    cb("dimension([0-9]+)", function(a) { return new bb(a[0], "cd" + a[1]) });
    cb("metric([0-9]+)", function(a) { return new bb(a[0], "cm" + a[1]) });
    S("linkerParam", void 0, void 0, Bc, db);
    var ld = S("usage", "_u"),
        Gd = S("_um");
    S("forceSSL", void 0, void 0, function() { return Ba }, function(a, b, c) {
        J(34);
        Ba = !!c
    });
    var ed = S("_j1", "jid"),
        ia = S("_j2", "gjid");
    cb("\\&(.*)", function(a) {
        var b = new bb(a[0], a[1]),
            c = yc(a[0].substring(1));
        c && (b.Z = function(a) { return a.get(c) }, b.o = function(a, b, g, ca) { a.set(c, g, ca) }, b.F = void 0);
        return b
    });
    var Qb = T("_oot"),
        dd = S("previewTask"),
        Rb = S("checkProtocolTask"),
        md = S("validationTask"),
        Sb = S("checkStorageTask"),
        Uc = S("historyImportTask"),
        Tb = S("samplerTask"),
        Vb = S("_rlt"),
        Wb = S("buildHitTask"),
        Xb = S("sendHitTask"),
        Vc = S("ceTask"),
        zd = S("devIdTask"),
        Cd = S("timingTask"),
        Ld = S("displayFeaturesTask"),
        oa = S("customTask"),
        V = T("name"),
        Q = T("clientId", "cid"),
        n = T("clientIdTime"),
        xd = T("storedClientId"),
        Ad = S("userId", "uid"),
        Na = T("trackingId", "tid"),
        U = T("cookieName", void 0, "_ga"),
        W = T("cookieDomain"),
        Yb = T("cookiePath",
            void 0, "/"),
        Zb = T("cookieExpires", void 0, 63072E3),
        Hd = T("cookieUpdate", void 0, !0),
        $b = T("legacyCookieDomain"),
        Wc = T("legacyHistoryImport", void 0, !0),
        ac = T("storage", void 0, "cookie"),
        bc = T("allowLinker", void 0, !1),
        cc = T("allowAnchor", void 0, !0),
        Ka = T("sampleRate", "sf", 100),
        dc = T("siteSpeedSampleRate", void 0, 1),
        ec = T("alwaysSendReferrer", void 0, !1),
        I = T("_gid", "_gid"),
        la = T("_gcn"),
        Kd = T("useAmpClientId"),
        ce = T("_gclid"),
        fe = T("_gt"),
        he = T("_ge", void 0, 7776E6),
        ie = T("_gclsrc"),
        je = T("storeGac", void 0, !0),
        gd = S("transportUrl"),
        Md = S("_r", "_r"),
        qe = S("_dp");

    function X(a, b, c, d) { b[a] = function() { try { return d && J(d), c.apply(this, arguments) } catch (e) { throw ge("exc", a, e && e.name), e; } } };
    var Od = function() {
            this.V = 100;
            this.$ = this.fa = !1;
            this.oa = "detourexp";
            this.ea = 1
        },
        Ed = function(a) {
            var b = new Od,
                c;
            if (b.fa && b.$) return 0;
            b.$ = !0;
            if (a) { if (b.oa && void 0 !== a.get(b.oa)) return R(a, b.oa); if (0 == a.get(dc)) return 0 }
            if (0 == b.V) return 0;
            void 0 === c && (c = Bd());
            return 0 == c % b.V ? Math.floor(c / b.V) % b.ea + 1 : 0
        };

    function fc() {
        var a, b;
        if ((b = (b = O.navigator) ? b.plugins : null) && b.length)
            for (var c = 0; c < b.length && !a; c++) { var d = b[c]; - 1 < d.name.indexOf("Shockwave Flash") && (a = d.description) }
        if (!a) try {
            var e = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
            a = e.GetVariable("$version")
        } catch (g) {}
        if (!a) try { e = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"), a = "WIN 6,0,21,0", e.AllowScriptAccess = "always", a = e.GetVariable("$version") } catch (g) {}
        if (!a) try { e = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"), a = e.GetVariable("$version") } catch (g) {} a &&
            (e = a.match(/[\d]+/g)) && 3 <= e.length && (a = e[0] + "." + e[1] + " r" + e[2]);
        return a || void 0
    };
    var aa = function(a) { var b = Math.min(R(a, dc), 100); return La(P(a, Q)) % 100 >= b ? !1 : !0 },
        gc = function(a) {
            var b = {};
            if (Ec(b) || Fc(b)) {
                var c = b[Eb];
                void 0 == c || Infinity == c || isNaN(c) || (0 < c ? (Y(b, Gb), Y(b, Jb), Y(b, Ib), Y(b, Fb), Y(b, Hb), Y(b, Kb), Y(b, Lb), va(function() { a(b) }, 10)) : L(O, "load", function() { gc(a) }, !1))
            }
        },
        Ec = function(a) {
            var b = O.performance || O.webkitPerformance;
            b = b && b.timing;
            if (!b) return !1;
            var c = b.navigationStart;
            if (0 == c) return !1;
            a[Eb] = b.loadEventStart - c;
            a[Gb] = b.domainLookupEnd - b.domainLookupStart;
            a[Jb] = b.connectEnd -
                b.connectStart;
            a[Ib] = b.responseStart - b.requestStart;
            a[Fb] = b.responseEnd - b.responseStart;
            a[Hb] = b.fetchStart - c;
            a[Kb] = b.domInteractive - c;
            a[Lb] = b.domContentLoadedEventStart - c;
            return !0
        },
        Fc = function(a) {
            if (O.top != O) return !1;
            var b = O.external,
                c = b && b.onloadT;
            b && !b.isValidLoadTime && (c = void 0);
            2147483648 < c && (c = void 0);
            0 < c && b.setPageReadyTime();
            if (void 0 == c) return !1;
            a[Eb] = c;
            return !0
        },
        Y = function(a, b) { var c = a[b]; if (isNaN(c) || Infinity == c || 0 > c) a[b] = void 0 },
        Fd = function(a) {
            return function(b) {
                if ("pageview" == b.get(Va) &&
                    !a.I) {
                    a.I = !0;
                    var c = aa(b),
                        d = 0 < E(b.get(kb), "gclid").length;
                    (c || d) && gc(function(b) {
                        c && a.send("timing", b);
                        d && a.send("adtiming", b)
                    })
                }
            }
        };
    var hc = !1,
        mc = function(a) {
            if ("cookie" == P(a, ac)) {
                if (a.get(Hd) || P(a, xd) != P(a, Q)) {
                    var b = 1E3 * R(a, Zb);
                    ma(a, Q, U, b)
                }
                ma(a, I, la, 864E5);
                if (a.get(je)) {
                    var c = a.get(ce);
                    if (c) {
                        var d = Math.min(R(a, he), 1E3 * R(a, Zb));
                        d = Math.min(d, 1E3 * R(a, fe) + d - (new Date).getTime());
                        a.data.set(he, d);
                        b = {};
                        var e = a.get(fe),
                            g = a.get(ie),
                            ca = kc(P(a, Yb)),
                            l = lc(P(a, W)),
                            k = P(a, Na);
                        g && "aw.ds" != g ? b && (b.ua = !0) : (c = ["1", e, Cc(c)].join("."), 0 < d && (b && (b.ta = !0), zc("_gac_" + Cc(k), c, ca, l, k, d)));
                        le(b)
                    }
                } else J(75);
                if (a = "none" === lc(P(a, W))) a = M.location.hostname,
                    a = eb.test(a) || vc.test(a);
                a && J(30)
            }
        },
        ma = function(a, b, c, d) {
            var e = nd(a, b);
            if (e) {
                c = P(a, c);
                var g = kc(P(a, Yb)),
                    ca = lc(P(a, W)),
                    l = P(a, Na);
                if ("auto" != ca) zc(c, e, g, ca, l, d) && (hc = !0);
                else {
                    J(32);
                    for (var k = id(), w = 0; w < k.length; w++)
                        if (ca = k[w], a.data.set(W, ca), e = nd(a, b), zc(c, e, g, ca, l, d)) { hc = !0; return }
                    a.data.set(W, "auto")
                }
            }
        },
        nc = function(a) { if ("cookie" == P(a, ac) && !hc && (mc(a), !hc)) throw "abort"; },
        Yc = function(a) {
            if (a.get(Wc)) {
                var b = P(a, W),
                    c = P(a, $b) || xa(),
                    d = Xc("__utma", c, b);
                d && (J(19), a.set(Tc, (new Date).getTime(), !0), a.set(Rc,
                    d.R), (b = Xc("__utmz", c, b)) && d.hash == b.hash && a.set(Sc, b.R))
            }
        },
        nd = function(a, b) {
            b = Cc(P(a, b));
            var c = lc(P(a, W)).split(".").length;
            a = jc(P(a, Yb));
            1 < a && (c += "-" + a);
            return b ? ["GA1", c, b].join(".") : ""
        },
        Xd = function(a, b) { return na(b, P(a, W), P(a, Yb)) },
        na = function(a, b, c) {
            if (!a || 1 > a.length) J(12);
            else {
                for (var d = [], e = 0; e < a.length; e++) {
                    var g = a[e];
                    var ca = g.split(".");
                    var l = ca.shift();
                    ("GA1" == l || "1" == l) && 1 < ca.length ? (g = ca.shift().split("-"), 1 == g.length && (g[1] = "1"), g[0] *= 1, g[1] *= 1, ca = { H: g, s: ca.join(".") }) : ca = kd.test(g) ? { H: [0, 0], s: g } : void 0;
                    ca && d.push(ca)
                }
                if (1 == d.length) return J(13), d[0].s;
                if (0 == d.length) J(12);
                else {
                    J(14);
                    d = Gc(d, lc(b).split(".").length, 0);
                    if (1 == d.length) return d[0].s;
                    d = Gc(d, jc(c), 1);
                    1 < d.length && J(41);
                    return d[0] && d[0].s
                }
            }
        },
        Gc = function(a, b, c) {
            for (var d = [], e = [], g, ca = 0; ca < a.length; ca++) {
                var l = a[ca];
                l.H[c] == b ? d.push(l) : void 0 == g || l.H[c] < g ? (e = [l], g = l.H[c]) : l.H[c] == g && e.push(l)
            }
            return 0 < d.length ? d : e
        },
        lc = function(a) { return 0 == a.indexOf(".") ? a.substr(1) : a },
        id = function() {
            var a = [],
                b = xa().split(".");
            if (4 == b.length) {
                var c =
                    b[b.length - 1];
                if (parseInt(c, 10) == c) return ["none"]
            }
            for (c = b.length - 2; 0 <= c; c--) a.push(b.slice(c).join("."));
            a.push("none");
            return a
        },
        kc = function(a) {
            if (!a) return "/";
            1 < a.length && a.lastIndexOf("/") == a.length - 1 && (a = a.substr(0, a.length - 1));
            0 != a.indexOf("/") && (a = "/" + a);
            return a
        },
        jc = function(a) { a = kc(a); return "/" == a ? 1 : a.split("/").length },
        le = function(a) {
            a.ta && J(77);
            a.na && J(74);
            a.pa && J(73);
            a.ua && J(69)
        };

    function Xc(a, b, c) {
        "none" == b && (b = "");
        var d = [],
            e = Ca(a);
        a = "__utma" == a ? 6 : 2;
        for (var g = 0; g < e.length; g++) {
            var ca = ("" + e[g]).split(".");
            ca.length >= a && d.push({ hash: ca[0], R: e[g], O: ca })
        }
        if (0 != d.length) return 1 == d.length ? d[0] : Zc(b, d) || Zc(c, d) || Zc(null, d) || d[0]
    }

    function Zc(a, b) {
        if (null == a) var c = a = 1;
        else c = La(a), a = La(D(a, ".") ? a.substring(1) : "." + a);
        for (var d = 0; d < b.length; d++)
            if (b[d].hash == c || b[d].hash == a) return b[d]
    };
    var od = new RegExp(/^https?:\/\/([^\/:]+)/),
        pd = /(.*)([?&#])(?:_ga=[^&#]*)(?:&?)(.*)/,
        me = /(.*)([?&#])(?:_gac=[^&#]*)(?:&?)(.*)/;

    function Bc(a) {
        var b = a.get(Q),
            c = a.get(I) || "";
        b = "_ga=2." + K(pa(c + b, 0) + "." + c + "-" + b);
        if ((c = a.get(ce)) && a.get(je)) {
            var d = R(a, fe);
            1E3 * d + R(a, he) <= (new Date).getTime() ? (J(76), a = "") : (J(44), a = "&_gac=1." + K([pa(c, 0), d, c].join(".")))
        } else a = "";
        return b + a
    }

    function Ic(a, b) {
        var c = new Date,
            d = O.navigator,
            e = d.plugins || [];
        a = [a, d.userAgent, c.getTimezoneOffset(), c.getYear(), c.getDate(), c.getHours(), c.getMinutes() + b];
        for (b = 0; b < e.length; ++b) a.push(e[b].description);
        return La(a.join("."))
    }

    function pa(a, b) {
        var c = new Date,
            d = O.navigator,
            e = c.getHours() + Math.floor((c.getMinutes() + b) / 60);
        return La([a, d.userAgent, d.language || "", c.getTimezoneOffset(), c.getYear(), c.getDate() + Math.floor(e / 24), (24 + e) % 24, (60 + c.getMinutes() + b) % 60].join("."))
    }
    var Dc = function(a) {
        J(48);
        this.target = a;
        this.T = !1
    };
    Dc.prototype.ca = function(a, b) { if (a.tagName) { if ("a" == a.tagName.toLowerCase()) { a.href && (a.href = qd(this, a.href, b)); return } if ("form" == a.tagName.toLowerCase()) return rd(this, a) } if ("string" == typeof a) return qd(this, a, b) };
    var qd = function(a, b, c) {
            var d = pd.exec(b);
            d && 3 <= d.length && (b = d[1] + (d[3] ? d[2] + d[3] : ""));
            (d = me.exec(b)) && 3 <= d.length && (b = d[1] + (d[3] ? d[2] + d[3] : ""));
            a = a.target.get("linkerParam");
            var e = b.indexOf("?");
            d = b.indexOf("#");
            c ? b += (-1 == d ? "#" : "&") + a : (c = -1 == e ? "?" : "&", b = -1 == d ? b + (c + a) : b.substring(0, d) + c + a + b.substring(d));
            b = b.replace(/&+_ga=/, "&_ga=");
            return b = b.replace(/&+_gac=/, "&_gac=")
        },
        rd = function(a, b) {
            if (b && b.action)
                if ("get" == b.method.toLowerCase()) {
                    a = a.target.get("linkerParam").split("&");
                    for (var c = 0; c < a.length; c++) {
                        var d =
                            a[c].split("="),
                            e = d[1];
                        d = d[0];
                        for (var g = b.childNodes || [], ca = !1, l = 0; l < g.length; l++)
                            if (g[l].name == d) {
                                g[l].setAttribute("value", e);
                                ca = !0;
                                break
                            }
                        ca || (g = M.createElement("input"), g.setAttribute("type", "hidden"), g.setAttribute("name", d), g.setAttribute("value", e), b.appendChild(g))
                    }
                } else "post" == b.method.toLowerCase() && (b.action = qd(a, b.action))
        };
    Dc.prototype.S = function(a, b, c) {
        function d(c) {
            try {
                c = c || O.event;
                a: {
                    var d = c.target || c.srcElement;
                    for (c = 100; d && 0 < c;) {
                        if (d.href && d.nodeName.match(/^a(?:rea)?$/i)) { var g = d; break a } d = d.parentNode;
                        c--
                    }
                    g = {}
                }("http:" == g.protocol || "https:" == g.protocol) && sd(a, g.hostname || "") && g.href && (g.href = qd(e, g.href, b))
            } catch (k) { J(26) }
        }
        var e = this;
        this.T || (this.T = !0, L(M, "mousedown", d, !1), L(M, "keyup", d, !1));
        c && L(M, "submit", function(b) {
            b = b || O.event;
            if ((b = b.target || b.srcElement) && b.action) {
                var c = b.action.match(od);
                c && sd(a, c[1]) &&
                    rd(e, b)
            }
        })
    };

    function sd(a, b) {
        if (b == M.location.hostname) return !1;
        for (var c = 0; c < a.length; c++)
            if (a[c] instanceof RegExp) { if (a[c].test(b)) return !0 } else if (0 <= b.indexOf(a[c])) return !0;
        return !1
    }

    function ke(a, b) { return b != Ic(a, 0) && b != Ic(a, -1) && b != Ic(a, -2) && b != pa(a, 0) && b != pa(a, -1) && b != pa(a, -2) };
    var p = /^(GTM|OPT)-[A-Z0-9]+$/,
        q = /;_gaexp=[^;]*/g,
        r = /;((__utma=)|([^;=]+=GAX?\d+\.))[^;]*/g,
        Aa = /^https?:\/\/[\w\-.]+\.google.com(:\d+)?\/optimize\/opt-launch\.html\?.*$/,
        t = function(a) {
            function b(a, b) { b && (c += "&" + a + "=" + K(b)) }
            var c = "https://www.google-analytics.com/gtm/js?id=" + K(a.id);
            "dataLayer" != a.B && b("l", a.B);
            b("t", a.target);
            b("cid", a.clientId);
            b("cidt", a.ka);
            b("gac", a.la);
            b("aip", a.ia);
            a.sync && b("m", "sync");
            b("cycle", a.G);
            a.qa && b("gclid", a.qa);
            Aa.test(M.referrer) && b("cb", String(hd()));
            return c
        };
    var Jd = function(a, b, c) {
            this.aa = b;
            (b = c) || (b = (b = P(a, V)) && "t0" != b ? Wd.test(b) ? "_gat_" + Cc(P(a, Na)) : "_gat_" + Cc(b) : "_gat");
            this.Y = b;
            this.ra = null
        },
        Rd = function(a, b) {
            var c = b.get(Wb);
            b.set(Wb, function(b) {
                Pd(a, b, ed);
                Pd(a, b, ia);
                var d = c(b);
                Qd(a, b);
                return d
            });
            var d = b.get(Xb);
            b.set(Xb, function(b) {
                var c = d(b);
                if (b.get(ed)) {
                    if (ne() !== H(a, b)) {
                        J(80);
                        var e = { U: re(a, b, 1), google: re(a, b, 2), count: 0 };
                        pe("https://stats.g.doubleclick.net/j/collect", e.U, e)
                    } else ta(re(a, b, 0));
                    b.set(ed, "", !0)
                }
                return c
            })
        },
        Pd = function(a, b, c) {
            b.get(c) ||
                ("1" == Ca(a.Y)[0] ? b.set(c, "", !0) : b.set(c, "" + hd(), !0))
        },
        Qd = function(a, b) { b.get(ed) && zc(a.Y, "1", b.get(Yb), b.get(W), b.get(Na), 6E4) },
        re = function(a, b, c) {
            var d = new ee,
                e = function(a) { $a(a).F && d.set($a(a).F, b.get(a)) };
            e(hb);
            e(ib);
            e(Na);
            e(Q);
            e(ed);
            if (0 == c || 1 == c) e(Ad), e(ia), e(I);
            d.set($a(ld).F, Td(b));
            var g = "";
            d.map(function(a, b) {
                g += K(a) + "=";
                g += K("" + b) + "&"
            });
            g += "z=" + hd();
            0 == c ? g = a.aa + g : 1 == c ? g = "t=dc&aip=1&_r=3&" + g : 2 == c && (g = "t=sr&aip=1&_r=4&slf_rd=1&" + g);
            return g
        },
        H = function(a, b) {
            null === a.ra && (a.ra = 1 === Ed(b), a.ra &&
                J(33));
            return a.ra
        },
        Wd = /^gtm\d+$/;
    var fd = function(a, b) {
        a = a.b;
        if (!a.get("dcLoaded")) {
            var c = new $c(Dd(a));
            c.set(29);
            a.set(Gd, c.w);
            b = b || {};
            var d;
            b[U] && (d = Cc(b[U]));
            b = new Jd(a, "https://stats.g.doubleclick.net/r/collect?t=dc&aip=1&_r=3&", d);
            Rd(b, a);
            a.set("dcLoaded", !0)
        }
    };
    var Sd = function(a) {
        if (!a.get("dcLoaded") && "cookie" == a.get(ac)) {
            var b = new Jd(a);
            Pd(b, a, ed);
            Pd(b, a, ia);
            Qd(b, a);
            if (a.get(ed)) {
                var c = ne() !== H(b, a);
                a.set(Md, 1, !0);
                c ? (J(79), a.set(gd, oe() + "/j/collect", !0), a.set(qe, { U: re(b, a, 1), google: re(b, a, 2), count: 0 }, !0)) : a.set(gd, oe() + "/r/collect", !0)
            }
        }
    };
    var Lc = function() { var a = O.gaGlobal = O.gaGlobal || {}; return a.hid = a.hid || hd() };
    var ad, bd = function(a, b, c) {
        if (!ad) {
            var d = M.location.hash;
            var e = O.name,
                g = /^#?gaso=([^&]*)/;
            if (e = (d = (d = d && d.match(g) || e && e.match(g)) ? d[1] : Ca("GASO")[0] || "") && d.match(/^(?:!([-0-9a-z.]{1,40})!)?([-.\w]{10,1200})$/i)) zc("GASO", "" + d, c, b, a, 0), window._udo || (window._udo = b), window._utcp || (window._utcp = c), a = e[1], wa("https://www.google.com/analytics/web/inpage/pub/inpage.js?" + (a ? "prefix=" + a + "&" : "") + hd(), "_gasojs");
            ad = !0
        }
    };
    var wb = /^(UA|YT|MO|GP)-(\d+)-(\d+)$/,
        pc = function(a) {
            function b(a, b) { d.b.data.set(a, b) }

            function c(a, c) {
                b(a, c);
                d.filters.add(a)
            }
            var d = this;
            this.b = new Ya;
            this.filters = new Ha;
            b(V, a[V]);
            b(Na, sa(a[Na]));
            b(U, a[U]);
            b(W, a[W] || xa());
            b(Yb, a[Yb]);
            b(Zb, a[Zb]);
            b(Hd, a[Hd]);
            b($b, a[$b]);
            b(Wc, a[Wc]);
            b(bc, a[bc]);
            b(cc, a[cc]);
            b(Ka, a[Ka]);
            b(dc, a[dc]);
            b(ec, a[ec]);
            b(ac, a[ac]);
            b(Ad, a[Ad]);
            b(n, a[n]);
            b(Kd, a[Kd]);
            b(je, a[je]);
            b(hb, 1);
            b(ib, "j67");
            c(Qb, Ma);
            c(oa, ua);
            c(dd, cd);
            c(Rb, Oa);
            c(md, vb);
            c(Sb, nc);
            c(Uc, Yc);
            c(Tb, Ja);
            c(Vb, Ta);
            c(Vc, Hc);
            c(zd, yd);
            c(Ld, Sd);
            c(Wb, Pa);
            c(Xb, Sa);
            c(Cd, Fd(this));
            Kc(this.b);
            Jc(this.b, a[Q]);
            this.b.set(jb, Lc());
            bd(this.b.get(Na), this.b.get(W), this.b.get(Yb))
        },
        Jc = function(a, b) {
            var c = P(a, U);
            a.data.set(la, "_ga" == c ? "_gid" : c + "_gid");
            if ("cookie" == P(a, ac)) {
                hc = !1;
                c = Ca(P(a, U));
                c = Xd(a, c);
                if (!c) {
                    c = P(a, W);
                    var d = P(a, $b) || xa();
                    c = Xc("__utma", d, c);
                    void 0 != c ? (J(10), c = c.O[1] + "." + c.O[2]) : c = void 0
                }
                c && (hc = !0);
                if (d = c && !a.get(Hd))
                    if (d = c.split("."), 2 != d.length) d = !1;
                    else if (d = Number(d[1])) {
                    var e = R(a, Zb);
                    d = d + e < (new Date).getTime() /
                        1E3
                } else d = !1;
                d && (c = void 0);
                c && (a.data.set(xd, c), a.data.set(Q, c), c = Ca(P(a, la)), (c = Xd(a, c)) && a.data.set(I, c));
                if (a.get(je) && (c = a.get(ce), d = a.get(ie), !c || d && "aw.ds" != d)) {
                    c = {};
                    if (M) {
                        d = [];
                        e = M.cookie.split(";");
                        for (var g = /^\s*_gac_(UA-\d+-\d+)=\s*(.+?)\s*$/, ca = 0; ca < e.length; ca++) {
                            var l = e[ca].match(g);
                            l && d.push({ ja: l[1], value: l[2] })
                        }
                        e = {};
                        if (d && d.length)
                            for (g = 0; g < d.length; g++)(ca = d[g].value.split("."), "1" != ca[0] || 3 != ca.length) ? c && (c.na = !0) : ca[1] && (e[d[g].ja] ? c && (c.pa = !0) : e[d[g].ja] = [], e[d[g].ja].push({
                                timestamp: ca[1],
                                qa: ca[2]
                            }));
                        d = e
                    } else d = {};
                    d = d[P(a, Na)];
                    le(c);
                    d && 0 != d.length && (c = d[0], a.data.set(fe, c.timestamp), a.data.set(ce, c.qa))
                }
            }
            if (a.get(Hd)) a: if (d = be("_ga", a.get(cc)))
                if (a.get(bc))
                    if (c = d.indexOf("."), -1 == c) J(22);
                    else {
                        e = d.substring(0, c);
                        g = d.substring(c + 1);
                        c = g.indexOf(".");
                        d = g.substring(0, c);
                        g = g.substring(c + 1);
                        if ("1" == e) { if (c = g, ke(c, d)) { J(23); break a } } else if ("2" == e) {
                            c = g.indexOf("-");
                            e = "";
                            0 < c ? (e = g.substring(0, c), c = g.substring(c + 1)) : c = g.substring(1);
                            if (ke(e + c, d)) { J(53); break a } e && (J(2), a.data.set(I, e))
                        } else {
                            J(22);
                            break a
                        }
                        J(11);
                        a.data.set(Q, c);
                        if (c = be("_gac", a.get(cc))) c = c.split("."), "1" != c[0] || 4 != c.length ? J(72) : ke(c[3], c[1]) ? J(71) : (a.data.set(ce, c[3]), a.data.set(fe, c[2]), J(70))
                    }
            else J(21);
            b && (J(9), a.data.set(Q, K(b)));
            a.get(Q) || ((b = (b = O.gaGlobal && O.gaGlobal.vid) && -1 != b.search(jd) ? b : void 0) ? (J(17), a.data.set(Q, b)) : (J(8), a.data.set(Q, ra())));
            a.get(I) || (J(3), a.data.set(I, ra()));
            mc(a)
        },
        Kc = function(a) {
            var b = O.navigator,
                c = O.screen,
                d = M.location;
            a.set(lb, ya(a.get(ec), a.get(Kd)));
            if (d) {
                var e = d.pathname || "";
                "/" != e.charAt(0) &&
                    (J(31), e = "/" + e);
                a.set(kb, d.protocol + "//" + d.hostname + e + d.search)
            }
            c && a.set(qb, c.width + "x" + c.height);
            c && a.set(pb, c.colorDepth + "-bit");
            c = M.documentElement;
            var g = (e = M.body) && e.clientWidth && e.clientHeight,
                ca = [];
            c && c.clientWidth && c.clientHeight && ("CSS1Compat" === M.compatMode || !g) ? ca = [c.clientWidth, c.clientHeight] : g && (ca = [e.clientWidth, e.clientHeight]);
            c = 0 >= ca[0] || 0 >= ca[1] ? "" : ca.join("x");
            a.set(rb, c);
            a.set(tb, fc());
            a.set(ob, M.characterSet || M.charset);
            a.set(sb, b && "function" === typeof b.javaEnabled && b.javaEnabled() ||
                !1);
            a.set(nb, (b && (b.language || b.browserLanguage) || "").toLowerCase());
            a.data.set(ce, be("gclid", !0));
            a.data.set(ie, be("gclsrc", !0));
            a.data.set(fe, Math.round((new Date).getTime() / 1E3));
            if (d && a.get(cc) && (b = M.location.hash)) {
                b = b.split(/[?&#]+/);
                d = [];
                for (c = 0; c < b.length; ++c)(D(b[c], "utm_id") || D(b[c], "utm_campaign") || D(b[c], "utm_source") || D(b[c], "utm_medium") || D(b[c], "utm_term") || D(b[c], "utm_content") || D(b[c], "gclid") || D(b[c], "dclid") || D(b[c], "gclsrc")) && d.push(b[c]);
                0 < d.length && (b = "#" + d.join("&"), a.set(kb,
                    a.get(kb) + b))
            }
        };
    pc.prototype.get = function(a) { return this.b.get(a) };
    pc.prototype.set = function(a, b) { this.b.set(a, b) };
    var qc = { pageview: [mb], event: [ub, xb, yb, zb], social: [Bb, Cb, Db], timing: [Mb, Nb, Pb, Ob] };
    pc.prototype.send = function(a) {
        if (!(1 > arguments.length)) {
            if ("string" === typeof arguments[0]) { var b = arguments[0]; var c = [].slice.call(arguments, 1) } else b = arguments[0] && arguments[0][Va], c = arguments;
            b && (c = za(qc[b] || [], c), c[Va] = b, this.b.set(c, void 0, !0), this.filters.D(this.b), this.b.data.m = {})
        }
    };
    pc.prototype.ma = function(a, b) {
        var c = this;
        u(a, c, b) || (v(a, function() { u(a, c, b) }), y(String(c.get(V)), a, void 0, b, !0))
    };
    var rc = function(a) {
            if ("prerender" == M.visibilityState) return !1;
            a();
            return !0
        },
        z = function(a) {
            if (!rc(a)) {
                J(16);
                var b = !1,
                    c = function() {
                        if (!b && rc(a)) {
                            b = !0;
                            var d = c,
                                e = M;
                            e.removeEventListener ? e.removeEventListener("visibilitychange", d, !1) : e.detachEvent && e.detachEvent("onvisibilitychange", d)
                        }
                    };
                L(M, "visibilitychange", c)
            }
        };
    var td = /^(?:(\w+)\.)?(?:(\w+):)?(\w+)$/,
        sc = function(a) {
            if (ea(a[0])) this.u = a[0];
            else {
                var b = td.exec(a[0]);
                null != b && 4 == b.length && (this.c = b[1] || "t0", this.K = b[2] || "", this.C = b[3], this.a = [].slice.call(a, 1), this.K || (this.A = "create" == this.C, this.i = "require" == this.C, this.g = "provide" == this.C, this.ba = "remove" == this.C), this.i && (3 <= this.a.length ? (this.X = this.a[1], this.W = this.a[2]) : this.a[1] && (qa(this.a[1]) ? this.X = this.a[1] : this.W = this.a[1])));
                b = a[1];
                a = a[2];
                if (!this.C) throw "abort";
                if (this.i && (!qa(b) || "" == b)) throw "abort";
                if (this.g && (!qa(b) || "" == b || !ea(a))) throw "abort";
                if (ud(this.c) || ud(this.K)) throw "abort";
                if (this.g && "t0" != this.c) throw "abort";
            }
        };

    function ud(a) { return 0 <= a.indexOf(".") || 0 <= a.indexOf(":") };
    var Yd, Zd, $d, A;
    Yd = new ee;
    $d = new ee;
    A = new ee;
    Zd = { ec: 45, ecommerce: 46, linkid: 47 };
    var u = function(a, b, c) {
            b == N || b.get(V);
            var d = Yd.get(a);
            if (!ea(d)) return !1;
            b.plugins_ = b.plugins_ || new ee;
            if (b.plugins_.get(a)) return !0;
            b.plugins_.set(a, new d(b, c || {}));
            return !0
        },
        y = function(a, b, c, d, e) {
            if (!ea(Yd.get(b)) && !$d.get(b)) {
                Zd.hasOwnProperty(b) && J(Zd[b]);
                if (p.test(b)) {
                    J(52);
                    a = N.j(a);
                    if (!a) return !0;
                    c = d || {};
                    d = { id: b, B: c.dataLayer || "dataLayer", ia: !!a.get("anonymizeIp"), sync: e, G: !1 };
                    a.get("&gtm") == b && (d.G = !0);
                    var g = String(a.get("name"));
                    "t0" != g && (d.target = g);
                    G(String(a.get("trackingId"))) || (d.clientId =
                        String(a.get(Q)), d.ka = Number(a.get(n)), c = c.palindrome ? r : q, c = (c = M.cookie.replace(/^|(; +)/g, ";").match(c)) ? c.sort().join("").substring(1) : void 0, d.la = c, d.qa = E(a.b.get(kb) || "", "gclid"));
                    a = d.B;
                    c = (new Date).getTime();
                    O[a] = O[a] || [];
                    c = { "gtm.start": c };
                    e || (c.event = "gtm.js");
                    O[a].push(c);
                    c = t(d)
                }!c && Zd.hasOwnProperty(b) ? (J(39), c = b + ".js") : J(43);
                c && (c && 0 <= c.indexOf("/") || (c = (Ba || "https:" == M.location.protocol ? "https:" : "http:") + "//www.google-analytics.com/plugins/ua/" + c), d = ae(c), a = d.protocol, c = M.location.protocol,
                    ("https:" == a || a == c || ("http:" != a ? 0 : "http:" == c)) && B(d) && (wa(d.url, void 0, e), $d.set(b, !0)))
            }
        },
        v = function(a, b) {
            var c = A.get(a) || [];
            c.push(b);
            A.set(a, c)
        },
        C = function(a, b) {
            Yd.set(a, b);
            b = A.get(a) || [];
            for (var c = 0; c < b.length; c++) b[c]();
            A.set(a, [])
        },
        B = function(a) {
            var b = ae(M.location.href);
            if (D(a.url, "https://www.google-analytics.com/gtm/js?id=")) return !0;
            if (a.query || 0 <= a.url.indexOf("?") || 0 <= a.path.indexOf("://")) return !1;
            if (a.host == b.host && a.port == b.port) return !0;
            b = "http:" == a.protocol ? 80 : 443;
            return "www.google-analytics.com" ==
                a.host && (a.port || b) == b && D(a.path, "/plugins/") ? !0 : !1
        },
        ae = function(a) {
            function b(a) {
                var b = (a.hostname || "").split(":")[0].toLowerCase(),
                    c = (a.protocol || "").toLowerCase();
                c = 1 * a.port || ("http:" == c ? 80 : "https:" == c ? 443 : "");
                a = a.pathname || "";
                D(a, "/") || (a = "/" + a);
                return [b, "" + c, a]
            }
            var c = M.createElement("a");
            c.href = M.location.href;
            var d = (c.protocol || "").toLowerCase(),
                e = b(c),
                g = c.search || "",
                ca = d + "//" + e[0] + (e[1] ? ":" + e[1] : "");
            D(a, "//") ? a = d + a : D(a, "/") ? a = ca + a : !a || D(a, "?") ? a = ca + e[2] + (a || g) : 0 > a.split("/")[0].indexOf(":") &&
                (a = ca + e[2].substring(0, e[2].lastIndexOf("/")) + "/" + a);
            c.href = a;
            d = b(c);
            return { protocol: (c.protocol || "").toLowerCase(), host: d[0], port: d[1], path: d[2], query: c.search || "", url: a || "" }
        };
    var Z = { ga: function() { Z.f = [] } };
    Z.ga();
    Z.D = function(a) {
        var b = Z.J.apply(Z, arguments);
        b = Z.f.concat(b);
        for (Z.f = []; 0 < b.length && !Z.v(b[0]) && !(b.shift(), 0 < Z.f.length););
        Z.f = Z.f.concat(b)
    };
    Z.J = function(a) {
        for (var b = [], c = 0; c < arguments.length; c++) try {
            var d = new sc(arguments[c]);
            d.g ? C(d.a[0], d.a[1]) : (d.i && (d.ha = y(d.c, d.a[0], d.X, d.W)), b.push(d))
        } catch (e) {}
        return b
    };
    Z.v = function(a) {
        try {
            if (a.u) a.u.call(O, N.j("t0"));
            else {
                var b = a.c == gb ? N : N.j(a.c);
                if (a.A) { if ("t0" == a.c && (b = N.create.apply(N, a.a), null === b)) return !0 } else if (a.ba) N.remove(a.c);
                else if (b)
                    if (a.i) { if (a.ha && (a.ha = y(a.c, a.a[0], a.X, a.W)), !u(a.a[0], b, a.W)) return !0 } else if (a.K) {
                    var c = a.C,
                        d = a.a,
                        e = b.plugins_.get(a.K);
                    e[c].apply(e, d)
                } else b[a.C].apply(b, a.a)
            }
        } catch (g) {}
    };
    var N = function(a) {
        J(1);
        Z.D.apply(Z, [arguments])
    };
    N.h = {};
    N.P = [];
    N.L = 0;
    N.answer = 42;
    var uc = [Na, W, V];
    N.create = function(a) {
        var b = za(uc, [].slice.call(arguments));
        b[V] || (b[V] = "t0");
        var c = "" + b[V];
        if (N.h[c]) return N.h[c];
        a: {
            if (b[Kd]) {
                J(67);
                if (b[ac] && "cookie" != b[ac]) { var d = !1; break a }
                if (void 0 !== Ab) b[Q] || (b[Q] = Ab);
                else {
                    b: {
                        d = String(b[W] || xa());
                        var e = String(b[Yb] || "/"),
                            g = Ca(String(b[U] || "_ga"));d = na(g, d, e);
                        if (!d || jd.test(d)) d = !0;
                        else if (d = Ca("AMP_TOKEN"), 0 == d.length) d = !0;
                        else { if (1 == d.length && (d = decodeURIComponent(d[0]), "$RETRIEVING" == d || "$OPT_OUT" == d || "$ERROR" == d || "$NOT_FOUND" == d)) { d = !0; break b } d = !1 }
                    }
                    if (d &&
                        tc(ic, String(b[Na]))) { d = !0; break a }
                }
            }
            d = !1
        }
        if (d) return null;
        b = new pc(b);
        N.h[c] = b;
        N.P.push(b);
        return b
    };
    N.remove = function(a) {
        for (var b = 0; b < N.P.length; b++)
            if (N.P[b].get(V) == a) {
                N.P.splice(b, 1);
                N.h[a] = null;
                break
            }
    };
    N.j = function(a) { return N.h[a] };
    N.getAll = function() { return N.P.slice(0) };
    N.N = function() {
        "ga" != gb && J(49);
        var a = O[gb];
        if (!a || 42 != a.answer) {
            N.L = a && a.l;
            N.loaded = !0;
            var b = O[gb] = N;
            X("create", b, b.create);
            X("remove", b, b.remove);
            X("getByName", b, b.j, 5);
            X("getAll", b, b.getAll, 6);
            b = pc.prototype;
            X("get", b, b.get, 7);
            X("set", b, b.set, 4);
            X("send", b, b.send);
            X("requireSync", b, b.ma);
            b = Ya.prototype;
            X("get", b, b.get);
            X("set", b, b.set);
            if ("https:" != M.location.protocol && !Ba) {
                a: {
                    b = M.getElementsByTagName("script");
                    for (var c = 0; c < b.length && 100 > c; c++) {
                        var d = b[c].src;
                        if (d && 0 == d.indexOf("https://www.google-analytics.com/analytics")) {
                            b = !0;
                            break a
                        }
                    }
                    b = !1
                }
                b && (Ba = !0)
            }(O.gaplugins = O.gaplugins || {}).Linker = Dc;
            b = Dc.prototype;
            C("linker", Dc);
            X("decorate", b, b.ca, 20);
            X("autoLink", b, b.S, 25);
            C("displayfeatures", fd);
            C("adfeatures", fd);
            a = a && a.q;
            ka(a) ? Z.D.apply(N, a) : J(50)
        }
    };
    N.da = function() { for (var a = N.getAll(), b = 0; b < a.length; b++) a[b].get(V) };
    var da = N.N,
        Nd = O[gb];
    Nd && Nd.r ? da() : z(da);
    z(function() { Z.D(["provide", "render", ua]) });

    function La(a) {
        var b = 1,
            c;
        if (a)
            for (b = 0, c = a.length - 1; 0 <= c; c--) {
                var d = a.charCodeAt(c);
                b = (b << 6 & 268435455) + d + (d << 14);
                d = b & 266338304;
                b = 0 != d ? b ^ d >> 21 : b
            }
        return b
    };
})(window);